/*
 * @Descripttion: 通过传入 key(在 ctx.request.body 上) 和 身份，判断其是否相等
 * @version: 1.0
 * @Author: 自由如风
 * @Date: 2021-04-28 10:02:41
 * @LastEditors: 自由如风
 * @LastEditTime: 2021-04-28 14:21:42
 */

const DB = require("../../lib/DB")

module.exports = function (key, identity) {
    return async function (ctx, next) {
        const id = ctx.request.body[key];
        const user = await DB.models.user.findByPk(id)
        if (user.identity == identity) {
            await next();
        } else {
            throw new Error("身份与执行的操作不符")
        }
    }
}
